#ifndef __FASTFOURIERTRANS_H_

#define __FASTFOURIERTRANS_H_

#include "Complex.h"


class CFastFourierTrans
	{
private:
	complex *ExpTab;
	long *SwapTab;
	long N;
	int Exp; // N = 2^Exp

public:
	CFastFourierTrans() ;
	CFastFourierTrans(const long an);
	~CFastFourierTrans() ;
	const long GetSize() { return N; } ;
	bool NewSize(const long an);
	void Transform(complex *x);
	virtual void TransformStat(int Percent);
	} ;

#endif //__FASTFOURIERTRANS_H_